testsuite/gdk/Makefile
testsuite/gtk/Makefile
testsuite/reftests/Makefile
+testsuite/tools/Makefile
docs/Makefile
docs/reference/Makefile
docs/reference/gdk/Makefile
include $(top_srcdir)/Makefile.decl
-SUBDIRS = gdk gtk a11y css reftests
+SUBDIRS = gdk gtk a11y css reftests tools
-include $(top_srcdir)/git.mk
--- /dev/null
+include $(top_srcdir)/Makefile.decl
+
+NULL =
+
+test_simplify = \
+ simplify/test1.ui simplify/test1.expected \
+ simplify/test2.ui simplify/test2.expected \
+ simplify/test3.ui simplify/test3.expected \
+ simplify/test4.ui simplify/test4.expected \
+ simplify/test5.ui simplify/test5.expected \
+ simplify/test6.ui simplify/test6.expected \
+ simplify/test7.ui simplify/test7.expected \
+ simplify/test8.ui simplify/test8.expected \
+ $(NULL)
+
+EXTRA_DIST += \
+ $(test_simplify)
+
+TESTS_ENVIRONMENT = \
+ GTK_BUILDER_TOOL="$(top_builddir)/gtk/gtk-builder-tool"
+
+TEST_PROGS += \
+ test-simplify \
+ $(NULL)
+
+-include $(top_srcdir)/git.mk
--- /dev/null
+<!-- default property gets stripped -->
+<interface>
+ <object class="GtkWindow">
+ </object>
+</interface>
--- /dev/null
+<!-- default property gets stripped -->
+<interface>
+ <object class="GtkWindow">
+ <property name="visible">False</property>
+ </object>
+</interface>
--- /dev/null
+<!-- non-default property not stripped -->
+<interface>
+ <object class="GtkWindow">
+ <property name="visible">True</property>
+ </object>
+</interface>
--- /dev/null
+<!-- non-default property not stripped -->
+<interface>
+ <object class="GtkWindow">
+ <property name="visible">True</property>
+ </object>
+</interface>
--- /dev/null
+<!-- translatable property not stripped -->
+<interface>
+ <object class="GtkWindow">
+ <property name="visible" translatable="yes">False</property>
+ </object>
+</interface>
--- /dev/null
+<!-- translatable property not stripped -->
+<interface>
+ <object class="GtkWindow">
+ <property name="visible" translatable="yes">False</property>
+ </object>
+</interface>
--- /dev/null
+<!-- irrelevant comments and context are stripped -->
+<interface>
+ <object class="GtkWindow">
+ <property name="visible">True</property>
+ </object>
+</interface>
--- /dev/null
+<!-- irrelevant comments and context are stripped -->
+<interface>
+ <object class="GtkWindow">
+ <property name="visible" comments="foo" context="bla">True</property>
+ </object>
+</interface>
--- /dev/null
+<!-- placeholders are stripped -->
+<interface>
+ <object class="GtkWindow">
+ <child>
+ <object class="GtkBox">
+ </object>
+ </child>
+ </object>
+</interface>
--- /dev/null
+<!-- placeholders are stripped -->
+<interface>
+ <object class="GtkWindow">
+ <child>
+ <object class="GtkBox">
+ <child>
+ <placeholder/>
+ </child>
+ </object>
+ </child>
+ </object>
+</interface>
--- /dev/null
+<!-- non-canonical property name works -->
+<interface>
+ <object class="GtkWindow">
+ </object>
+</interface>
--- /dev/null
+<!-- non-canonical property name works -->
+<interface>
+ <object class="GtkWindow">
+ <property name="default_width">-1</property>
+ </object>
+</interface>
--- /dev/null
+<!-- default child property gets stripped -->
+<interface>
+ <object class="GtkBox">
+ <child>
+ <object class="GtkLabel"/>
+ </child>
+ </object>
+</interface>
--- /dev/null
+<!-- default child property gets stripped -->
+<interface>
+ <object class="GtkBox">
+ <child>
+ <object class="GtkLabel">
+ </object>
+ <packing>
+ <property name="expand">False</property>
+ </packing>
+ </child>
+ </object>
+</interface>
--- /dev/null
+<!-- non-default child property remains -->
+<interface>
+ <object class="GtkBox">
+ <child>
+ <object class="GtkLabel"/>
+ <packing>
+ <property name="expand">True</property>
+ </packing>
+ </child>
+ </object>
+</interface>
--- /dev/null
+<!-- non-default child property remains -->
+<interface>
+ <object class="GtkBox">
+ <child>
+ <object class="GtkLabel">
+ </object>
+ <packing>
+ <property name="expand">True</property>
+ </packing>
+ </child>
+ </object>
+</interface>
--- /dev/null
+#! /bin/sh
+
+GTK_BUILDER_TOOL=${GTK_BUILDER_TOOL:-gtk-builder-tool}
+TEST_DATA_DIR=${TEST_DATA_DIR:-./simplify}
+TEST_RESULT_DIR=${TEST_RESULT_DIR:-/tmp}
+
+shopt -s nullglob
+TESTS=( "$TEST_DATA_DIR"/*.ui )
+
+echo "1..${#TESTS}"
+
+I=1
+for t in ${TESTS[*]}; do
+ name=$(basename $t .ui)
+ expected="$TEST_DATA_DIR/$name.expected"
+ result="$TEST_RESULT_DIR/$name.out"
+
+ $GTK_BUILDER_TOOL simplify $t 2>/dev/null >$result
+
+ if diff "$expected" "$result" > /dev/null; then
+ echo "ok $I $name"
+ else
+ echo "not ok $I $name"
+ fi
+
+ I=$((I+1))
+done